// PartManager.cpp: implementation of the PartManager class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "phsshare.h"
#include "PartManager.h"
#include "PersistentObjectManager.h"
#include "Project.h"
#include "ProjectManager.h"

#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

PartManager::PartManager()
{
}

PartManager::~PartManager()
{

}

Part* PartManager::GetPart(INT nKey)
{
	return GetManaged(nKey);
}

void PartManager::AddPart(Part* pPart)
{
	ASSERT(pPart);

	if(project() == NULL)
	{
		ASSERT(GetProjectManager().CurProject());
		GetProjectManager().CurProject()->GetPersistentObjectManager().Add(pPart);
	}
	else
		project()->GetPersistentObjectManager().Add(pPart);

	this->Add(pPart->Id(), pPart->Id());
}
